package com.github.shiqiyue.app;

import com.itextpdf.text.*;
import com.itextpdf.text.pdf.PdfPCell;
import com.itextpdf.text.pdf.PdfPTable;
import com.itextpdf.text.pdf.PdfWriter;
import com.sun.imageio.plugins.common.ImageUtil;
import lombok.extern.slf4j.Slf4j;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/***
 *
 * @author wenyao.wu
 * @date:2020/5/18
 */
@Slf4j
public class PdfTest2 {

    public static void main(String[] args) throws IOException, DocumentException {
        Rectangle rectangle = new Rectangle(PageSize.A4);       // 设置 PDF 纸张矩形，大小采用 A4
        rectangle.setBackgroundColor(BaseColor.WHITE);       // 设置背景色
        //创建一个文档对象，设置初始化大小和页边距
        Document document = new Document(rectangle, 10, 10, 10, 10);     // 上、下、左、右页间距

        String pdfPath = "D://pdfImage_test.pdf";   // PDF 的输出位置
        try {
            PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(pdfPath));
        } catch (DocumentException e) {
            log.error("将文档对象设置到文件输出流中 - 出错了！", e);
        } catch (FileNotFoundException e) {
            log.error("未找到指定的文件！", e);
        }
        document.open();    // 打开文档对象
        PdfPTable table = new PdfPTable(4);
        table.setWidthPercentage(100);
        String imagePath = "D://a.jpg";      // 图片的绝对路径
        for (int i = 0; i < 21; i++) {
            Image image = Image.getInstance(imagePath);
            image.scaleAbsolute(300, 400);
            table.addCell(image);
        }
        PdfPCell cell = new PdfPCell();
        cell.disableBorderSide(15);
        table.addCell(cell);
        table.addCell(cell);
        table.addCell(cell);
        table.addCell(cell);
        document.add(table);


        document.close();       // 关闭文档
    }
}
